
#ifndef __MAIN_H__
#define __MAIN_H__

#include <glib.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>

G_BEGIN_DECLS


#define TYPE_MAIN_WND (main_wnd_get_type ())
#define MAIN_WND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MAIN_WND, MainWnd))
#define MAIN_WND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MAIN_WND, MainWndClass))
#define IS_MAIN_WND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MAIN_WND))
#define IS_MAIN_WND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MAIN_WND))
#define MAIN_WND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MAIN_WND, MainWndClass))

typedef struct _MainWnd MainWnd;
typedef struct _MainWndClass MainWndClass;
typedef struct _MainWndPrivate MainWndPrivate;

struct _MainWnd {
	GtkWindow parent_instance;
	MainWndPrivate * priv;
};

struct _MainWndClass {
	GtkWindowClass parent_class;
	void (*on_file_new_actived) (MainWnd* self);
	void (*on_file_quit_actived) (MainWnd* self);
	gboolean (*on_delete_event) (MainWnd* self);
};


void main_wnd_on_file_new_actived (MainWnd* self);
void main_wnd_on_file_quit_actived (MainWnd* self);
gboolean main_wnd_on_delete_event (MainWnd* self);
gint main_wnd_main (char** args, int args_length1);
MainWnd* main_wnd_construct (GType object_type);
MainWnd* main_wnd_new (void);
GType main_wnd_get_type (void);


G_END_DECLS

#endif
